1. Field of the Invention
The field of the invention is software development, or, more specifically, automated tools for support of software development, or, even more specifically, round trip maintenance of software configuration.
2. Description of the Related Art
Information from the software development utilities often known as ‘wizards’ and from ‘IDEs’ or Integrated Development Environments is gathered from programmers and used to generate software. Some of that information, such as data comprising deployment descriptors, is saved in files or repositories separate from the source code. However the flexibility of modem development tools allows programmers to make further changes in various places without going through the wizards of IDEs that would ordinarily track and integrate such changes, therefore making it difficult and complex for the development tools, particularly the plugin-type tools, such as wizards that attempt to supplement IDE functionality, to keep all the separate information such as deployment descriptors in synchronization with the source code.
It is generally the function of tools such as wizards and IDEs to keep a programming environment in a consistent and coherent state. Changes in one place or the other by the base tool, or other tools used directly by a programmer outside a base tool, in combination, can create inconsistencies where the appropriate collateral changes, that the wizard would normally require to be made, are not made.
It is a particular problem of prior art of software development that, with respect to software applications large enough to be useful in modem software environments, programmers find it very difficult to know all the implications of changes in particular segments of source code. That is, programmers may not know or understand how changes in source code affect other software components, without excessive amounts trial and error. Automated synchronization of source code and related software development tools such as deployment descriptors, for example, with changes made by programmers outside a toolset or programming environment, would be very advantageous, tremendous time savers and proficiency aids for programmers.